package com.example.d4_enum;

/**
 * 抽象枚举 - 就是在枚举中定义了一个抽象方法
 */
public enum B {
    // 枚举的第一行只能罗列对象
    // 因为抽象枚举不能创建对象,所以在罗列对象的时候,直接重写抽象方法即可
    X() { // 调用无参的构造器

        @Override
        public void go() {

        }
    }, Y("张三") { // 调用有参的构造器

        @Override
        public void go() {
            System.out.println(getName() + "再跑~~~");
        }
    };

    // 枚举的构造器都是私有的,写不写都一样
    B() {
    }

    B(String name) {
        this.name = name;
    }

    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public abstract void go();
}
